Any computerized business solution can have a multitude of available options to achieve a solution for a desired goal. Each option can provide the same solution using different software components, such as installers, source archives, metadata, helper components, and so forth. The hierarchy of software components that are used to provide a desired solution are often not initially known and can vary depending on the available resources that meet the various requirements that can be defined in a resource specification document. These software components can be located within a single computing system or within one or more computing systems that are part of a network of interconnected computer systems, such as those found in a client server network.